package com.heima.model.article.pojos;

import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * 文章信息表，存储已发布的文章
 * @TableName ap_article
 */
@ApiModel(description = "文章信息表，存储已发布的文章")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@TableName(value ="ap_article")
public class ApArticle implements Serializable {

    /**
     * 
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 标题
     */
    @ApiModelProperty("标题")
    private String title;

    /**
     * 文章作者的ID
     */
    @ApiModelProperty("文章作者的ID")
    private Integer authorId;

    /**
     * 作者昵称
     */
    @ApiModelProperty("作者昵称")
    private String authorName;

    /**
     * 文章所属频道ID
     */
    @ApiModelProperty("文章所属频道ID")
    private Integer channelId;

    /**
     * 频道名称
     */
    @ApiModelProperty("频道名称")
    private String channelName;

    /**
     * 文章布局
            0 无图文章
            1 单图文章
            2 多图文章
     */
    @ApiModelProperty("文章布局           0 无图文章           1 单图文章           2 多图文章")
    private Integer layout;

    /**
     * 文章标记
            0 普通文章
            1 热点文章
            2 置顶文章
            3 精品文章
            4 大V 文章
     */
    @ApiModelProperty("文章标记           0 普通文章           1 热点文章           2 置顶文章           3 精品文章           4 大V 文章")
    private Integer flag;

    /**
     * 文章图片
            多张逗号分隔
     */
    @ApiModelProperty("文章图片           多张逗号分隔")
    private String images;

    /**
     * 文章标签最多3个 逗号分隔
     */
    @ApiModelProperty("文章标签最多3个 逗号分隔")
    private String labels;

    /**
     * 点赞数量
     */
    @ApiModelProperty("点赞数量")
    private Integer likes;

    /**
     * 收藏数量
     */
    @ApiModelProperty("收藏数量")
    private Integer collection;

    /**
     * 评论数量
     */
    @ApiModelProperty("评论数量")
    private Integer comment;

    /**
     * 阅读数量
     */
    @ApiModelProperty("阅读数量")
    private Integer views;

    /**
     * 省市
     */
    @ApiModelProperty("省市")
    private Integer provinceId;

    /**
     * 市区
     */
    @ApiModelProperty("市区")
    private Integer cityId;

    /**
     * 区县
     */
    @ApiModelProperty("区县")
    private Integer countyId;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createdTime;

    /**
     * 发布时间
     */
    @ApiModelProperty("发布时间")
    private Date publishTime;

    /**
     * 同步状态
     */
    @ApiModelProperty("同步状态")
    private Integer syncStatus;

    /**
     * 来源
     */
    @ApiModelProperty("来源")
    private Integer origin;


    @ApiModelProperty(hidden = true)
    private String staticUrl;


}